package org.ala.shopping_test.shopping_center.repository.order_buyer.entity;

import java.io.Serializable;
import java.util.List;
import java.util.ArrayList;


/**
 *	EntityFields (shopping_order_buyer)
 *  订单总表
 *
 *	@author 骆毅 (ala)
 *	@date 2025-03-24 15:40:25
 */
public class ShoppingOrderBuyerFields implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = 1L;

    /**
     *  订单id
     */
    public static String Id = "id";
    /**
     *  订单总id
     */
    public static String OrderId = "order_id";
    /**
     *  卖家订单id
     */
    public static String SellerOrderId = "seller_order_id";
    /**
     *  订单编码 [YYYYMMdd-Type]
     */
    public static String Code = "code";
    /**
     *  买家id
     */
    public static String BuyerId = "buyer_id";
    /**
     *  买家名称
     */
    public static String BuyerName = "buyer_name";
    /**
     *  卖家id
     */
    public static String SellerId = "seller_id";
    /**
     *  卖家名称
     */
    public static String SellerName = "seller_name";
    /**
     *  订单总金额（含优惠）
     */
    public static String OrderAmount = "order_amount";
    /**
     *  订单总税额
     */
    public static String OrderTax = "order_tax";
    /**
     *  订单总优惠金额
     */
    public static String OrderDiscountAmount = "order_discount_amount";
    /**
     *  订单总利润金额
     */
    public static String OrderProfit = "order_profit";
    /**
     *  订单金额明细
     */
    public static String OrderAmountDetail = "order_amount_detail";
    /**
     *  订单状态 0：待审核 1：已审核打单配货 2：已配货待发货 3：已发货 4：已到货 5：完成
     */
    public static String Status = "status";
    /**
     *  是否异常 0：否 1：是
     */
    public static String Abnormal = "abnormal";
    /**
     *  订单备注
     */
    public static String Remark = "remark";
    /**
     *  记录创建时间
     */
    public static String CreateTime = "create_time";
    /**
     *  记录最后修改时间
     */
    public static String ModifyTime = "modify_time";


    /**
     *  本次查询涉及的字段名
     */
    protected List<String> fields;
    public List<String> getFields() {
        return fields;
    }
    public void setFields(List<String> fields) {
        this.fields = fields;
    }
    /**
     *  全部字段
     */
    public static ShoppingOrderBuyerFields All() {
        ShoppingOrderBuyerFields f = new ShoppingOrderBuyerFields();
        List<String> fields = new ArrayList<>();
            fields.add(ShoppingOrderBuyerFields.Id);
            fields.add(ShoppingOrderBuyerFields.OrderId);
            fields.add(ShoppingOrderBuyerFields.SellerOrderId);
            fields.add(ShoppingOrderBuyerFields.Code);
            fields.add(ShoppingOrderBuyerFields.BuyerId);
            fields.add(ShoppingOrderBuyerFields.BuyerName);
            fields.add(ShoppingOrderBuyerFields.SellerId);
            fields.add(ShoppingOrderBuyerFields.SellerName);
            fields.add(ShoppingOrderBuyerFields.OrderAmount);
            fields.add(ShoppingOrderBuyerFields.OrderTax);
            fields.add(ShoppingOrderBuyerFields.OrderDiscountAmount);
            fields.add(ShoppingOrderBuyerFields.OrderProfit);
            fields.add(ShoppingOrderBuyerFields.OrderAmountDetail);
            fields.add(ShoppingOrderBuyerFields.Status);
            fields.add(ShoppingOrderBuyerFields.Abnormal);
            fields.add(ShoppingOrderBuyerFields.Remark);
            fields.add(ShoppingOrderBuyerFields.CreateTime);
            fields.add(ShoppingOrderBuyerFields.ModifyTime);
        f.fields = fields;
        return f;
    }
    /**
     *  追加 id
     */
    public static ShoppingOrderBuyerFields Id() {
        return new ShoppingOrderBuyerFields().id();
    }
    public ShoppingOrderBuyerFields id() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.Id);
        return this;
    }
    /**
     *  追加 order_id
     */
    public static ShoppingOrderBuyerFields OrderId() {
        return new ShoppingOrderBuyerFields().orderId();
    }
    public ShoppingOrderBuyerFields orderId() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderId);
        return this;
    }
    /**
     *  追加 seller_order_id
     */
    public static ShoppingOrderBuyerFields SellerOrderId() {
        return new ShoppingOrderBuyerFields().sellerOrderId();
    }
    public ShoppingOrderBuyerFields sellerOrderId() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.SellerOrderId);
        return this;
    }
    /**
     *  追加 code
     */
    public static ShoppingOrderBuyerFields Code() {
        return new ShoppingOrderBuyerFields().code();
    }
    public ShoppingOrderBuyerFields code() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.Code);
        return this;
    }
    /**
     *  追加 buyer_id
     */
    public static ShoppingOrderBuyerFields BuyerId() {
        return new ShoppingOrderBuyerFields().buyerId();
    }
    public ShoppingOrderBuyerFields buyerId() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.BuyerId);
        return this;
    }
    /**
     *  追加 buyer_name
     */
    public static ShoppingOrderBuyerFields BuyerName() {
        return new ShoppingOrderBuyerFields().buyerName();
    }
    public ShoppingOrderBuyerFields buyerName() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.BuyerName);
        return this;
    }
    /**
     *  追加 seller_id
     */
    public static ShoppingOrderBuyerFields SellerId() {
        return new ShoppingOrderBuyerFields().sellerId();
    }
    public ShoppingOrderBuyerFields sellerId() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.SellerId);
        return this;
    }
    /**
     *  追加 seller_name
     */
    public static ShoppingOrderBuyerFields SellerName() {
        return new ShoppingOrderBuyerFields().sellerName();
    }
    public ShoppingOrderBuyerFields sellerName() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.SellerName);
        return this;
    }
    /**
     *  追加 order_amount
     */
    public static ShoppingOrderBuyerFields OrderAmount() {
        return new ShoppingOrderBuyerFields().orderAmount();
    }
    public ShoppingOrderBuyerFields orderAmount() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderAmount);
        return this;
    }
    /**
     *  追加 order_tax
     */
    public static ShoppingOrderBuyerFields OrderTax() {
        return new ShoppingOrderBuyerFields().orderTax();
    }
    public ShoppingOrderBuyerFields orderTax() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderTax);
        return this;
    }
    /**
     *  追加 order_discount_amount
     */
    public static ShoppingOrderBuyerFields OrderDiscountAmount() {
        return new ShoppingOrderBuyerFields().orderDiscountAmount();
    }
    public ShoppingOrderBuyerFields orderDiscountAmount() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderDiscountAmount);
        return this;
    }
    /**
     *  追加 order_profit
     */
    public static ShoppingOrderBuyerFields OrderProfit() {
        return new ShoppingOrderBuyerFields().orderProfit();
    }
    public ShoppingOrderBuyerFields orderProfit() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderProfit);
        return this;
    }
    /**
     *  追加 order_amount_detail
     */
    public static ShoppingOrderBuyerFields OrderAmountDetail() {
        return new ShoppingOrderBuyerFields().orderAmountDetail();
    }
    public ShoppingOrderBuyerFields orderAmountDetail() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.OrderAmountDetail);
        return this;
    }
    /**
     *  追加 status
     */
    public static ShoppingOrderBuyerFields Status() {
        return new ShoppingOrderBuyerFields().status();
    }
    public ShoppingOrderBuyerFields status() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.Status);
        return this;
    }
    /**
     *  追加 abnormal
     */
    public static ShoppingOrderBuyerFields Abnormal() {
        return new ShoppingOrderBuyerFields().abnormal();
    }
    public ShoppingOrderBuyerFields abnormal() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.Abnormal);
        return this;
    }
    /**
     *  追加 remark
     */
    public static ShoppingOrderBuyerFields Remark() {
        return new ShoppingOrderBuyerFields().remark();
    }
    public ShoppingOrderBuyerFields remark() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.Remark);
        return this;
    }
    /**
     *  追加 create_time
     */
    public static ShoppingOrderBuyerFields CreateTime() {
        return new ShoppingOrderBuyerFields().createTime();
    }
    public ShoppingOrderBuyerFields createTime() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.CreateTime);
        return this;
    }
    /**
     *  追加 modify_time
     */
    public static ShoppingOrderBuyerFields ModifyTime() {
        return new ShoppingOrderBuyerFields().modifyTime();
    }
    public ShoppingOrderBuyerFields modifyTime() {
        if (fields == null) {fields = new ArrayList<>();}
        fields.add(ShoppingOrderBuyerFields.ModifyTime);
        return this;
    }
}